1. Field of the Invention
The present invention relates to a relay apparatus and a relay method that receives a first request via a network and sends a second request to a different network in response to the first request.
2. Description of the Related Art
Bridges, routers, gateways, and wireless access points are examples of devices that connect plural distributed networks to one another.
These devices block forwarding based on the destination address, protocol, and so on of a transmitted message, or control the priority of a transmitted message based on the type of network from which the transmitted message was sent, the protocol of the transmitted message, and the like. A gateway also performs congestion control and network protocol conversion of transmitted data.
Conventionally, whether to pass on a transmitted message or discard the transmitted message is determined based on the IP address or MAC address of the transmitted data according to Internet Protocol (IP) or based on the type of network protocol.
Furthermore, with the IP and TCP protocols, when a congestion control function is to be implemented by a gateway that has detected a state of congestion or by a computer or home electric appliance connected to the network, the congestion is suppressed in the following manner. First, a request (ICMP source quench) is sent to the computer, home electric appliance, or the like that has sent the transmitted message that is causing the congested state, requesting the computer or appliance to reduce its sending speed. Then, having received this request, the computer or home electric appliance suppresses the congestion by reducing the speed at which the transmission message is being sent, up until the request is no longer received.
For example, in the system for data filtering between transmission paths disclosed in Japanese Patent Laid-Open No. 07-210473, functionality for data filtering between transmission paths is expanded, resulting in the effective utilization of transmission path resources and the expansion of congestion control functionality. Furthermore, the possibility that the latest transmission data will be discarded, due to the suppression of congestions in the transmission path to which the data is to be forwarded, a lack of buffer area in the gateway, and so on, can be reduced when performing congestion control, based on the classification of attributes of the transmission data.
However, there is a problem in that even if control is executed on the TCP or UDP/IP levels while in a congested state, and the congestion is suppressed on such a level, such control may lead to error cases under the rules of an upper protocol, or may violate the rules of that upper protocol. For example, if the upper protocol has a rule in which when a message is sent to a certain end point, the response thereto must be executed within a certain number of seconds, and an error is defined for when the response is not executed within the certain number of seconds, such a situation results in an error case. If not defined as an error, this is nevertheless a violation of the rules of the protocol.
There is another problem that arises when controlling the priority of transmitted messages in mid-network using the protocol type: in a transmission path where various messages are transmitted, although the chance of a specific message being transmitted correctly improves, the chance of arrival for that message cannot be guaranteed.
Furthermore, another problem arises when one of the networks connected to the bridge, router, gateway, or wireless access point becomes incapable of communications: the messages flowing through that network do not arrive at their destinations, and thus the upper protocol does not function.